﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ComponentModel.DataAnnotations;
using Sita.Entities.MetaData.CustomAttributes;

namespace Sita.Entities.MetaData
{
    public class Provider
    {
        [ScaffoldColumn(false)]
        public object ProviderID { get; set; }

        [ScaffoldColumn(false)]
        public object BusinessUnitID { get; set; }

        [Required(ErrorMessageResourceType = typeof(Resources.Provider), ErrorMessageResourceName = "NameRequired")]
        [LocalizedDisplayName("Name", ResourceType = typeof(Resources.Provider))]
        [StringLength(100, ErrorMessageResourceType = typeof(Resources.Provider), ErrorMessageResourceName = "NameMaxLength")]
        [DataType(DataType.Text)]
        public object Name { get; set; }

        [LocalizedDisplayName("Description", ResourceType = typeof(Resources.Provider))]
        [StringLength(100, ErrorMessageResourceType = typeof(Resources.Provider), ErrorMessageResourceName = "DescriptionMaxLength")]
        [DataType(DataType.Text)]
        public object Description { get; set; }

        [LocalizedDisplayName("Phone", ResourceType = typeof(Resources.Provider))]
        [StringLength(50, ErrorMessageResourceType = typeof(Resources.Provider), ErrorMessageResourceName = "PhoneMaxLength")]
        [DataType(DataType.Text)]
        public object Phone { get; set; }

        [LocalizedDisplayName("Phone", ResourceType = typeof(Resources.Provider))]
        [StringLength(50, ErrorMessageResourceType = typeof(Resources.Provider), ErrorMessageResourceName = "PhoneMaxLength")]
        [DataType(DataType.Text)]
        public object Phone2 { get; set; }

        [LocalizedDisplayName("Email", ResourceType = typeof(Resources.Provider))]
        [StringLength(50, ErrorMessageResourceType = typeof(Resources.Provider), ErrorMessageResourceName = "EmailMaxLength")]
        [DataType(DataType.Text)]
        public object Email { get; set; }

        [LocalizedDisplayName("Email", ResourceType = typeof(Resources.Provider))]
        [StringLength(50, ErrorMessageResourceType = typeof(Resources.Provider), ErrorMessageResourceName = "EmailMaxLength")]
        [DataType(DataType.Text)]
        public object Email2 { get; set; }

        [LocalizedDisplayName("Address", ResourceType = typeof(Resources.Provider))]
        [StringLength(100, ErrorMessageResourceType = typeof(Resources.Provider), ErrorMessageResourceName = "AddressMaxLength")]
        [DataType(DataType.Text)]
        public object Address { get; set; }

        [LocalizedDisplayName("FiscalAddress", ResourceType = typeof(Resources.Provider))]
        [StringLength(100, ErrorMessageResourceType = typeof(Resources.Provider), ErrorMessageResourceName = "FiscalAddressMaxLength")]
        [DataType(DataType.Text)]
        public object FiscalAddress { get; set; }

        [LocalizedDisplayName("CUIT", ResourceType = typeof(Resources.Provider))]
        [StringLength(150, ErrorMessageResourceType = typeof(Resources.Provider), ErrorMessageResourceName = "CUITMaxLength")]
        [DataType(DataType.Text)]
        public object CUIT { get; set; }

        [LocalizedDisplayName("Web", ResourceType = typeof(Resources.Provider))]
        [StringLength(100, ErrorMessageResourceType = typeof(Resources.Provider), ErrorMessageResourceName = "WebMaxLength")]
        [DataType(DataType.Text)]
        public object Web { get; set; }
    }
}
